// #ifndef VUE3
import Vue from 'vue'
import App from './App'
import store from '@/store/store.js'
// 配置网络请求
// 由于平台的限制，小程序项目中不支持 axios，而且原生的 wx.request() API 功能较为简单，不支持拦截器等全局定制的功能。因此，建议在 uni-app 项目中使用 @escook/request-miniprogram 第三方包发起网络数据请求
// 按需导入 $http 对象
import {
  $http
} from '@escook/request-miniprogram'
// 将 $http 对像挂载到 uni 顶级对象之上 方便调用
uni.$http = $http
// 配置请求根路径
$http.baseUrl = 'https://www.uinav.com'
// console.log(store)
// 在请求之前做一些事情
$http.beforeRequest = function(options) { //请求拦截器
  // 数据请求之前显示loading
  uni.showLoading({
      title: "数据展示中。。。"
    }),
    console.log(options)
  if (options.url.indexOf('/my/') !== -1) {
    options.header = {
      Authorization: store.state.m_user.token
    }
  }
}
// 在请求之后做一些事情
$http.afterRequest = function() { //响应拦截器
  // 数据请求之后关闭loading
  uni.hideLoading()
}
// 1.3.6 封装方法 ：在uni 对象上挂载自定义$showMsg()方法 1.3.7-->见home.js
uni.$showMsg = function(title = "数据加载失败", duration = 1500) {
  uni.showToast({
    title,
    duration,
    icon: 'none'
  })
}

Vue.config.productionTip = false
App.mpType = 'app'
const app = new Vue({
  ...App,
  store
})
app.$mount()
// #endif

// #ifdef VUE3
import {
  createSSRApp
} from 'vue'
export function createApp() {
  const app = createSSRApp(App)
  return {
    app
  }
}
// #endif
